Release 10.1A: OpenEdge Getting Started:
OpenEdge Reference Architecture


Controller components

Controller components communicate with both View and Model components to coordinate the activities of the Presentation Layer.

Controller components commonly represent core services that transcend a single application. These highly reusable components serve as the basis for providing consistent behaviors within and across an application with regards to security, navigation, and general application management.

Types of Controller components

As shown in Table 4–2, there are a number of possible Controller components that can be designed for the Presentation Layer of an application. Controller components are often referred to as managers.

Table 4–2: Types of Controller components
Type
Description
UI-Specific
Managers that control aspects of a specific UI technology. For example, a Web Request manager handles management tasks specific to a browser-based UI.
UI Feature
Managers that control specific functionality of View components. For example, functionality includes Launch/Navigation management, help, personalization, and localization.
Session
Managers that control the environment of a session. For example, session environment includes connection, configuration, and caching.
Security
Managers that control for security aspects of the Presentation Layer. For example, security usually includes authentication and authorization.

Properties of a Controller component

Most Controller components will have properties maintaining instance information. For example, a security component for authentication usually holds a user ID and password in distinct properties, thus avoiding the need for the user to enter authentication more than once during an application session.

Routines of a Controller component

Controller components not only work with Model and View components, they also must have an interface contract to move data to and from the business services layer. Routines of a Controller component define each of these interfaces to other components.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095